# -*- coding : utf-8 -*-
# author : Big Cat
# time : 2021/7/26:8:14
# file : logger.py

import logging
# 获取日志器 ，调用日志
import os

from comm import dir_config as Dir
import time

class FrameLog:
    def getLogger(self):

        #创建日志器
        logger = logging.getLogger('logger')

        #日志输出当前级别以上级别的信息，默认日志输出最低级别是warning
        if not logger.handlers:
            logger.setLevel(logging.INFO)
            #创建控制台处理器 ——》输出控制台
            SH = logging.StreamHandler()
            filepath = os.path.join(Dir.log_dir, f"log{time.strftime('%Y%m%d%H%M%S', time.localtime())}.txt")
            #创建文件处理器——》输出文件
            FH = logging.FileHandler(filepath,encoding='utf-8')

            formatter = logging.Formatter(fmt="[%(asctime)s] [%(filename)s]  (%(lineno)d):%(levelname)s : %(message)s",
                                          datefmt="%Y-%m-%d %H:%M:%S")

            logger.addHandler(SH)
            logger.addHandler(FH)
            SH.setFormatter(formatter)
            FH.setFormatter(formatter)



        return logger


if __name__ == '__main__':
    log = FrameLog()
    log.getLogger().error('错误调试日志')